The present invention is directed to a method and apparatus that matches an input identifier to a reference identifier, and, in particular, to a method and apparatus that uses identifiers that incorporate at least one check-sum digit in order to correct any misrecognized input identifiers by generating a set of possible substitute identifiers. The misrecognized identifier is replaced by a substitute identifier that matches a valid reference identifier.
Most institutions, such as banks, department stores, and airlines, provide customers with telephone access to a wide variety of services and information. Before the advent of touch-tone telephones, a customer would obtain these services and information through interacting with a live operator. As touch-tone telephones became more prevalent in homes, these institutions began switching to automated customer-access systems. After dialing a telephone number, a customer using such systems would be asked to enter an account number, or some other identifier. As used herein, the term "identifier" refers to a string of characters that may comprise a plurality of letters, numbers, or words; based on this definition, an identifier may comprise either a random aggregation of characters, an actual word, or the name of a place or a person. Furthermore, as used herein, an identifier may comprise, but is not limited to, a string of characters for identifying a particular product, service, or location.
Today, a user can provide such an identifier to an institution through a number of ways besides touch-tone telephony, including by speaking the identifier into the telephone handset. When the user is prompted to speak the identifier, the institution uses a speech recognition system to produce a recognized identifier based on the spoken identifier. Regardless of how the user enters the identifier, however, once a recognized signal representative of the input identifier has been received at the institution, the institution must match the recognized signal with one of a plurality of pre-stored identifiers, which are also referred to as reference identifiers. After a match between the input identifier and a reference identifier is found, the institution performs a transaction based on the matched reference identifier, such as retrieving account information or ordering a specific product. Finding such a match may take some time, however, since institutions often maintain thousands, if not millions, of reference identifiers. Moreover, the more reference identifiers that an institution must search through in order to find a match with an input identifier, the less accurate this search becomes. Matching input identifiers with the wrong reference identifiers at least leads to delays and customer dissatisfaction, and perhaps also to erroneous billing or even to divulging sensitive, confidential information. This problem is exacerbated if the system misrecognizes the input identifier, since the system will attempt in this situation to find a reference identifier that matches a recognized identifier that does not correspond exactly with the input identifier provided by the user. In the event, however unlikely, that the system finds a reference identifier that matches the misrecognized identifier, whatever subsequent transactions are performed by the user will be based on erroneous information, since the system will be acting on the basis of a reference identifier that was matched to a recognized identifier that does not correspond to the input identifier. For instance, if a user provides an identifier that corresponds to a television he wishes to purchase, and the system misrecognizes the input identifier as another identifier, one that, for instance, corresponds to a radio, the merchandise purchase system will ship an unwanted item to the user. Quite obviously, this possibility would result in frustration to consumers and lost sales and reduced efficiency for businesses that rely on telephone-based consumer interaction systems. What is therefore needed is a system that detects when an input identifier has been misrecognized and that corrects such misrecognized identifiers so that the user-provided input identifier is accurately matched to the appropriate reference identifier.